package com.fstec.ks.master;

import java.io.File;
import java.io.FileInputStream;

import com.fstec.ks.master.bean.AuthInfo;
import com.sinotn.util.StreamUtil;

public abstract class MasterUtil {
	/**
	 * 读取授权文件信息
	 * @param file
	 * @return
	 * @auth <a href="mailto:xieqj@fstec.com">谢启进</a>
	 * @date 2023年10月15日 下午9:26:15
	 */
	public static AuthInfo readAuthInfo(File file){
		AuthInfo authInfo=new AuthInfo();
		FileInputStream fis=null;
		try{
			fis=new FileInputStream(file);
			// 4字节随机码
			int salt=StreamUtil.readInt(fis);
			// 授权码
			authInfo.setAuthNum(StreamUtil.readText(fis, salt));
			// ip地址
			authInfo.setIpAddr(StreamUtil.readText(fis, salt));
			// 4字节端口号
			authInfo.setPort(StreamUtil.readInt(fis));
		}catch(Throwable e){
			throw new RuntimeException(e);
		}finally{
			if(fis!=null){
				try{
					fis.close();
				}catch(Throwable e){}
			}
		}
		return authInfo;
	}
}
